package design.patterns.behavioral;

/**
 * 模板方法
 * 解释：
 * 模板方法模式是一种行为设计模式， 它在超类中定义了一个算法的框架，
 * 允许子类在不修改结构的情况下重写算法的特定步骤。
 */

/**
 * 情景
 * 登陆账号的方式不一样
 * 得到不同人的身高
 */
public class I_TemplateMethod {
    public static void main(String[] args) {
        Platform1 platform1 = new Platform1();
        Platform2 platform2 = new Platform2();
        platform1.loginWay();
        platform2.loginWay();
    }
}

abstract class PersonAttributed{
    protected String account = "1";
    abstract void loginWay();

}
class Platform1 extends PersonAttributed{

    @Override
    void loginWay() {
        System.out.println("密码登陆");
    }
}
class Platform2 extends PersonAttributed{

    @Override
    void loginWay() {
        System.out.println("保密令牌登陆");
    }
}